/*
 * Copyright 2018 JDCLOUD.COM
 *
 * Licensed under the Apache License, Version 2.0 (the "License");
 * you may not use this file except in compliance with the License.
 * You may obtain a copy of the License at
 *
 *    http:#www.apache.org/licenses/LICENSE-2.0
 *
 * Unless required by applicable law or agreed to in writing, software
 * distributed under the License is distributed on an "AS IS" BASIS,
 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 * See the License for the specific language governing permissions and
 * limitations under the License.
 *
 * Function OpenAPI
 * 
 *
 * OpenAPI spec version: v1
 * Contact: 
 *
 * NOTE: This class is auto generated by the jdcloud code generator program.
 */


using System;
using System.Collections.Generic;
using System.Text;
using JDCloudSDK.Core.Service;

using JDCloudSDK.Function.Model;
using JDCloudSDK.Core.Annotation;

namespace  JDCloudSDK.Function.Apis
{

    /// <summary>
    ///  创建函数
    /// </summary>
    public class CreateFunctionRequest : JdcloudRequest
    {
        ///<summary>
        /// 函数名称
        ///</summary>
        public   string Name{ get; set; }
        ///<summary>
        /// 函数描述信息
        ///</summary>
        public   string Description{ get; set; }
        ///<summary>
        /// 函数入口，格式为入口文件.入口函数名
        ///</summary>
        public   string Entrance{ get; set; }
        ///<summary>
        /// 函数运行最大内存
        ///</summary>
        public   int? Memory{ get; set; }
        ///<summary>
        /// 函数运行环境
        ///</summary>
        public   string RunTime{ get; set; }
        ///<summary>
        /// 函数运行超时时间
        ///</summary>
        public   int? OverTime{ get; set; }
        ///<summary>
        /// 函数版本，默认为LATEST
        ///</summary>
        public override  string Version{ get; set; }
        ///<summary>
        /// 函数代码包
        ///</summary>
        public   Code Code{ get; set; }
        ///<summary>
        /// 函数运行时环境变量
        ///</summary>
        public   Env Environment{ get; set; }
        ///<summary>
        /// 函数指定的日志集Id
        ///</summary>
        public   string LogSetId{ get; set; }
        ///<summary>
        /// 函数指定的日志主题Id
        ///</summary>
        public   string LogTopicId{ get; set; }
        ///<summary>
        /// 函数配置的VPCId
        ///</summary>
        public   string VpcId{ get; set; }
        ///<summary>
        /// 函数配置的子网Id
        ///</summary>
        public   string SubnetId{ get; set; }
        ///<summary>
        /// Region ID
        ///Required:true
        ///</summary>
        [Required]
        public override  string RegionId{ get; set; }
    }
}